<html>
<head><meta charset="utf-8"><title>understanding type checker · t-compiler/rust-analyzer · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/index.html">t-compiler/rust-analyzer</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html">understanding type checker</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="159343385"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159343385" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159343385">(Feb 25 2019 at 15:05)</a>:</h4>
<p>So <span class="user-mention" data-user-id="129457">@Florian Diebold</span>, we were talking and we realized that it'd be great to sync up a bit more about what you've been doing with respect to the type checker in rust-analyzer. I'm particularly interested in the idea of sharing code between chalk and rust-analyzer (and eventually rustc). This would probably mean sharing (to start) the representation of types and the logic for lowering a traits + impls into logical rules (and of course the chalk solver itself). In the meantime, the idea would be that rust-analyzer continues to kind of "explore" what a new type checker impl might look like (I have thoughts on that, but also want to understand first what you've been up to) and then we try to bridge what rustc has + what rust-analyzer has to create a spec / shared library at some point in the future</p>



<a name="159343505"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159343505" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159343505">(Feb 25 2019 at 15:06)</a>:</h4>
<p>To that end I was going to propose that maybe we should do some of the following steps (not necessarily in this order =):</p>
<p>1. recorded walkthrough of what rust-analyzer has implemented<br>
2. recorded walkthrough of how rustc type checker works<br>
3. some design discussion of how to ideas around how to represent types and maybe sketching out what a shared library would look like </p>
<p>I think this would potentially be a good source for collaboration with some folks from <span class="user-group-mention" data-user-group-id="692">@WG-compiler-traits</span></p>



<a name="159343513"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159343513" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159343513">(Feb 25 2019 at 15:06)</a>:</h4>
<p>What do you think? :)</p>



<a name="159368692"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159368692" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Florian Diebold <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159368692">(Feb 25 2019 at 20:20)</a>:</h4>
<p>Sure! We're actually at a point now where I've started thinking about how to handle traits and trying to understand rustc's trait solving in more detail, so it's good timing :) I think as far as the design of the type inference goes, I think it's actually not very far from the rustc implementation, only much simpler of course -- apart from the lots of missing features, the focus has been on type <em>inference</em> as opposed to <em>checking</em> so far, to get good enough information for completion and assists. (also, performance isn't a concern so far since we only need to type-check one function at a time :) )</p>



<a name="159369120"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159369120" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159369120">(Feb 25 2019 at 20:28)</a>:</h4>
<p><span class="user-mention" data-user-id="129457">@Florian Diebold</span> ok two questions. First, would you be up for giving a little talk about what you've done so far? That is probably the easiest way for me to come to understand it more deeply :)</p>



<a name="159369134"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159369134" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159369134">(Feb 25 2019 at 20:28)</a>:</h4>
<p>Nothing formal, i imagine basically a (Recorded) Zoom where you kind of walk through how some test case would get type-checked</p>



<a name="159369163"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159369163" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159369163">(Feb 25 2019 at 20:29)</a>:</h4>
<p>and I (along with anyone else who is listening) interrupt you every 22 seconds to ask for clarifications :)</p>



<a name="159369169"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159369169" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159369169">(Feb 25 2019 at 20:29)</a>:</h4>
<p>If you are up for that, what rough times work for you?</p>



<a name="159369698"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159369698" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Florian Diebold <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159369698">(Feb 25 2019 at 20:37)</a>:</h4>
<p>sure, I could probably do that. In general, on weekdays, after 8pm CET would work best for me, though I could maybe do after ~5pm if necessary depending on the situation at work</p>



<a name="159637682"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159637682" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159637682">(Feb 28 2019 at 18:19)</a>:</h4>
<p><span class="user-mention" data-user-id="129457">@Florian Diebold</span> Hmm, I missed this message when you sent it, sorry. </p>
<p>Late CET is of course decent for me, since I'm in Boston -- that's basically my afternoon. Though I think there's some funny business around daylight savings time coming up, so I don't trust myself to get the conversion exactly right. How about you (and others who may be listening!) fill out <a href="https://doodle.com/poll/m4eu4yut5iyzsgm8" target="_blank" title="https://doodle.com/poll/m4eu4yut5iyzsgm8">this doodle poll</a> and I'll do the same?</p>



<a name="159641385"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159641385" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Florian Diebold <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159641385">(Feb 28 2019 at 18:58)</a>:</h4>
<p>I was starting to wonder whether I should ping you ;) Filled out the doodle.</p>



<a name="159684402"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159684402" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> matklad <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159684402">(Mar 01 2019 at 07:18)</a>:</h4>
<p>Let's ping <span class="user-group-mention" data-user-group-id="1060">@WG-rls2.0</span> about the poll in case anybody else is interested</p>



<a name="159729667"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159729667" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159729667">(Mar 01 2019 at 16:59)</a>:</h4>
<p>ok, looking over this poll, I'm thinking Tuesday at 13:00 UTC-05:00 (Boston time) -- actually I may be off by an hour because of DST, but hopefully doodle got that right -- is a good match. It doesn't get <strong>everybody</strong> but no slot does.</p>



<a name="159729731"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159729731" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159729731">(Mar 01 2019 at 17:00)</a>:</h4>
<p>or maybe 2 hours later, 15:00</p>



<a name="159729771"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159729771" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159729771">(Mar 01 2019 at 17:00)</a>:</h4>
<p>I'm not sure whether "later" in CET time is better or worse :)</p>



<a name="159729912"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159729912" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159729912">(Mar 01 2019 at 17:02)</a>:</h4>
<p>Seems like <a href="https://www.timeanddate.com/worldclock/converter.html?iso=20190305T200000&amp;p1=43&amp;p2=195" target="_blank" title="https://www.timeanddate.com/worldclock/converter.html?iso=20190305T200000&amp;p1=43&amp;p2=195">15:00 in Boston is 21:00 in Paris</a> on Mar 5</p>



<a name="159730005"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159730005" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159730005">(Mar 01 2019 at 17:04)</a>:</h4>
<p>OK, let's do that.</p>



<a name="159730044"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159730044" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> davidtwco <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159730044">(Mar 01 2019 at 17:05)</a>:</h4>
<p>Is 21:00 Paris time when the meeting starts or ends?</p>



<a name="159730258"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159730258" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159730258">(Mar 01 2019 at 17:08)</a>:</h4>
<p>Actually, <span class="user-mention" data-user-id="131694">@scalexm</span>, you around? We're discussing the idea of a meeting to discuss the RLS 2.0 type checker <span aria-label="point up" class="emoji emoji-1f446" role="img" title="point up">:point_up:</span> and I am wondering if you are interested. More specifically, I've been meaning to ping you about chalk + RLS 2.0 integration.</p>



<a name="159730267"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159730267" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159730267">(Mar 01 2019 at 17:08)</a>:</h4>
<p>I was thinking that it would be interesting to try and have chalk + rust-analyzer share a common library defining Rust types</p>



<a name="159730279"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159730279" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159730279">(Mar 01 2019 at 17:09)</a>:</h4>
<p>(Though discussing that is not necessarily the point of this particular meeting)</p>



<a name="159730467"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159730467" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> scalexm <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159730467">(Mar 01 2019 at 17:12)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> I’m about to take a train so not sure I’ll have internet access</p>



<a name="159730480"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159730480" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159730480">(Mar 01 2019 at 17:12)</a>:</h4>
<p>I mostly was just curious if you were interested and if you had an opinion about the time</p>



<a name="159730482"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159730482" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> scalexm <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159730482">(Mar 01 2019 at 17:12)</a>:</h4>
<p>Which time are you planning to do the meeting?</p>



<a name="159730492"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159730492" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159730492">(Mar 01 2019 at 17:12)</a>:</h4>
<p>There is a doodle poll, but two likely times (Paris time) would be 19:00 or 21:00</p>



<a name="159730493"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159730493" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159730493">(Mar 01 2019 at 17:12)</a>:</h4>
<p>Tuesday March 5</p>



<a name="159730522"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159730522" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> scalexm <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159730522">(Mar 01 2019 at 17:13)</a>:</h4>
<p>Ah, yes 21:00 is good</p>



<a name="159730529"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159730529" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> scalexm <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159730529">(Mar 01 2019 at 17:13)</a>:</h4>
<p>(I’m interested)</p>



<a name="159730576"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159730576" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159730576">(Mar 01 2019 at 17:14)</a>:</h4>
<p>OK, great</p>



<a name="159730594"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159730594" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159730594">(Mar 01 2019 at 17:14)</a>:</h4>
<p>we'll do that</p>



<a name="159730893"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159730893" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159730893">(Mar 01 2019 at 17:19)</a>:</h4>
<p>(let me know if you want to be "invited", vs just subscribing to the whole calendar)</p>



<a name="159733765"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159733765" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159733765">(Mar 01 2019 at 18:02)</a>:</h4>
<p>those both seem like fine times</p>



<a name="159733813"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159733813" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159733813">(Mar 01 2019 at 18:02)</a>:</h4>
<p>Starts</p>



<a name="159733844"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159733844" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159733844">(Mar 01 2019 at 18:02)</a>:</h4>
<p>OK, I've added an event to the compile team calendar</p>



<a name="159733992"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159733992" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159733992">(Mar 01 2019 at 18:02)</a>:</h4>
<p><span class="user-mention" data-user-id="131694">@scalexm</span> sorry -- we are scheduling a meeting for next tuesday</p>



<a name="159734201"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159734201" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159734201">(Mar 01 2019 at 18:03)</a>:</h4>
<p>I'm also game to do 13:00, which would mean starting at 19:00 in Paris</p>



<a name="159735830"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159735830" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> scalexm <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159735830">(Mar 01 2019 at 18:15)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> I’m not sure to understand, so 21:00 Tuesday 5th does not work?</p>



<a name="159744422"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159744422" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159744422">(Mar 01 2019 at 20:04)</a>:</h4>
<p><span class="user-mention" data-user-id="131694">@scalexm</span> oh sorry, no 21:00 is fine</p>



<a name="159744431"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159744431" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159744431">(Mar 01 2019 at 20:04)</a>:</h4>
<p>and I added that time to the calendar</p>



<a name="159744436"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159744436" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159744436">(Mar 01 2019 at 20:04)</a>:</h4>
<p>it seems like somehow you got some old messages resent?</p>



<a name="159744454"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159744454" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159744454">(Mar 01 2019 at 20:04)</a>:</h4>
<p>(that is, Zulip seems to have sent them out of order or something, not sure)</p>



<a name="159803755"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/159803755" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> scalexm <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#159803755">(Mar 02 2019 at 16:05)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> Ah yes it was probably that</p>



<a name="160035313"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/160035313" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> scalexm <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#160035313">(Mar 05 2019 at 20:03)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> I might be just a few minutes late for the meeting, got out of work late</p>



<a name="160035452"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/160035452" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#160035452">(Mar 05 2019 at 20:04)</a>:</h4>
<p>Hi <span class="user-group-mention" data-user-group-id="1060">@WG-rls2.0</span>, <span class="user-group-mention" data-user-group-id="692">@WG-compiler-traits</span> -- we're about to start (<a href="https://zoom.us/j/339589887" target="_blank" title="https://zoom.us/j/339589887">on Zoom</a>) the "understanding ttpe checker" meeting</p>



<a name="160035455"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/160035455" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#160035455">(Mar 05 2019 at 20:04)</a>:</h4>
<p>it'll be recorded, too</p>



<a name="160035696"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/160035696" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Igor Matuszewski <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#160035696">(Mar 05 2019 at 20:07)</a>:</h4>
<p>That’s great to hear! In the end I can’t participate tonight but I’d mostly want to understand what’s going on and wouldn’t be able to significally contribute, so no loss there I believe</p>



<a name="160035701"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/160035701" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Igor Matuszewski <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#160035701">(Mar 05 2019 at 20:07)</a>:</h4>
<p>Thanks for recording it!</p>



<a name="160038923"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/160038923" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> davidtwco <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#160038923">(Mar 05 2019 at 20:51)</a>:</h4>
<p>Thanks <span class="user-mention" data-user-id="129457">@Florian Diebold</span> and <span class="user-mention" data-user-id="116009">@nikomatsakis</span>, that was very interesting.</p>



<a name="160039017"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/160039017" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#160039017">(Mar 05 2019 at 20:52)</a>:</h4>
<p><span aria-label="tada" class="emoji emoji-1f389" role="img" title="tada">:tada:</span></p>



<a name="160039022"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/160039022" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#160039022">(Mar 05 2019 at 20:52)</a>:</h4>
<p>I've got a lot of videos to post, going to try and get them done today, links to come!</p>



<a name="160039031"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/160039031" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#160039031">(Mar 05 2019 at 20:53)</a>:</h4>
<p>/me has basically spent all day recording interesting talks</p>



<a name="160039041"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/160039041" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#160039041">(Mar 05 2019 at 20:53)</a>:</h4>
<p>not a bad way to spend a day</p>



<a name="160039082"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/160039082" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> detrumi <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#160039082">(Mar 05 2019 at 20:53)</a>:</h4>
<p>Would be great, I just missed it (there's a calendar for this stuff right?)</p>



<a name="160039154"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/160039154" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#160039154">(Mar 05 2019 at 20:54)</a>:</h4>
<p><span class="user-mention" data-user-id="125131">@detrumi</span> yes, <a href="https://github.com/rust-lang/compiler-team#meeting-calendar" target="_blank" title="https://github.com/rust-lang/compiler-team#meeting-calendar">calendar is here</a></p>



<a name="160054984"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/160054984" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> blitzerr <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#160054984">(Mar 06 2019 at 00:28)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span>  would it make sense to have one stream or topic on zulip where we post the lecture video link once you complete uploading ? That way we can have one stop shop for all the treasures. I want thank people for taking time to prepare for this and Niko to organize, encode post and most of all coming up with the idea. This is excellent knowledge bank.</p>



<a name="160094004"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/160094004" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jeremy Kolb <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#160094004">(Mar 06 2019 at 13:17)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> will you post the video here when it's ready?</p>



<a name="160102467"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/160102467" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#160102467">(Mar 06 2019 at 14:57)</a>:</h4>
<p><a href="https://youtu.be/Lmp3P9WNL8o" target="_blank" title="https://youtu.be/Lmp3P9WNL8o">Video posted</a></p>



<a name="160102490"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/160102490" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#160102490">(Mar 06 2019 at 14:57)</a>:</h4>
<p><span class="user-mention" data-user-id="128294">@blitzerr</span> I do feel lke we need some better way to track and announce new videos.</p>



<a name="160998468"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/185405-t-compiler/rust-analyzer/topic/understanding%20type%20checker/near/160998468" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> David Laban <a href="https://rust-lang.github.io/zulip_archive/stream/185405-t-compiler/rust-analyzer/topic/understanding.20type.20checker.html#160998468">(Mar 17 2019 at 13:17)</a>:</h4>
<p>Thanks for posting the recording.</p>
<p>I found that the talk existed via the calendar at <a href="https://github.com/rust-lang/compiler-team#meeting-calendar" target="_blank" title="https://github.com/rust-lang/compiler-team#meeting-calendar">https://github.com/rust-lang/compiler-team#meeting-calendar</a> and then searched zulip around March 5th to find this thread.</p>
<p>To make this better, you could add the recording links to the calendar events. Alternatively, you could add a link to the discussion thread when you make the calendar event, and then post the video to the thread. That would make the video easy to find as well, and doesn't need you to edit the calendar event.</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>